"""
使用生成器表达式在列表中获取所有字符串.
在列表中获取所有整数,并计算它的平方.

"""
list01 = [43, "a", 5, True, 6, 7, 89, 9, "b"]

# 语法：变量 = (表达式 for 变量 in 可迭代对象 if 判断条件)
# 使用生成器表达式在列表中获取所有字符串.
str_generator1 = (item for item in list01 if type(item) is str)
str_generator2 = (item for item in list01 if isinstance(item,str))

# print(str_generator)
# for item in str_generator1:
#     print(item)

for item in str_generator2:
    print(item)

print("===================================")
# 在列表中获取所有整数,并计算它的平方.
# 语法：变量 = (表达式 for 变量 in 可迭代对象 if 判断条件)

num_generator1 = (item ** 2 for item in list01 if type(item) is int)
for item in num_generator1:
    print(item)
